home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
-
-
-
-
-
-
- G L O B A L S
-
-
-
-
-
-
- T h e
-
- G l o b a l
-
- C o n c o r d a n c e
-
- G e n e r a t o r
-
-
-
-
-
- (c) Copyright 1985, Arnold E. Jones
- ALL RIGHTS RESERVED
-
-
-
- March 11, 1985
- Version 1.00
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- U S E R W A R E
- User-Supported Software
-
- If you are using this program and finding it of value,
- your contribution ($35 suggested) will be appreciated.
-
- Arnold E. Jones
- P.O. Box 27956
- Orlando, FL 32867-7956
-
- When you send in a contribution I will send you a diskette
- which contains the source and any new revisions to the program.
- Your name will go on a mailing list and you will recieve any news
- about a new version or new programs which I have available.
-
- You are encouraged to copy and share this program with other
- users, on the conditions that the program is not distrubuted in
- modified form, that no fee or consideration is charged, and that
- this notice is not bypassed or removed.
-
- Copyright (c) 1985 Arnold E. Jones.
- ALL RIGHTS RESERVED
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- INTRODUCTION
-
- A concordance is an alphabetical index of the GLOBAL
- (PUBLIC) symbols in a program, showing which object module the
- symbol was defined in, and which object modules reference the
- symbol. This program is similiar to a cross reference program,
- but a cross reference program works with only one source file.
-
-
- This utility is most useful when a program consists of a
- large group of object modules. Once you generate a Global
- Concordance for your program it will be very easy to answer the
- following questions:
-
- . In which module did I define ASCBIN ?
-
- . In which segment is ASCBIN located ?
-
- . Which modules reference ASCBIN ?
-
-
-
- Where ASCBIN is some symbol defined as a public in your
- program. The symbols may be either program or data symbols.
-
-
- The input to GLOBALS is the same as the input to your
- linker, a list of MicroSoft compatiable object modules. These
- object modules can be from any of the language compilers, and you
- may mix languages. For example if one of your C modules calls
- an assembler module, the both may be listed. GLOBALS will then
- scan your list of object modules to produce a Global Concordance.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1
-
-
-
-
-
-
-
-
-
- INSTRUCTIONS
-
-
- GLOBALS may be invoked in 2 ways. By the first method, the
- user enters the commands as answers to individual prompts. By
- the second method, the user creates a command file that contains
- all the necessary commands.
-
-
- Method 1: GLOBALS
-
- Method 2: GLOBALS cmdfile
-
-
-
- METHOD 1:
-
- Enter:
-
- GLOBALS
-
-
- GLOBALS will be loaded into memory. Then GLOBALS returns a
- series of three text prompts that appear one at a time. The user
- answers the prompts as commands to GLOBALS. The prompts are as
- follows:
-
-
- Prompt Response
- ______ _____________________________
-
- Object Modules [.OBJ]: List all .OBJ files to be
- scanned, seperated by a plus
- sign (+). If the plus sign is
- the last character entered,
- the prompt will reappear. This
- allows entry of long lists.
- (max 256 object modules)
-
- List File [first.GC]: This is the file which will
- contain the Global Concordance
- Report. It defaults to the
- name of your first object
- module. Just depress enter
- to use the default name.
-
- Libraries []: List all .LIB files to be
- scanned, seperated by a plus
- sign (+). If the plus sign is
- the last character entered,
- the prompt will reappear. This
- allows entry of long lists.
- (max 8 libraries)
-
-
-
- 2
-
-
-
-
-
-
-
-
-
-
- Example:
-
-
- Object Modules [.OBJ]: GRAPH+BAR+PIE+SUBS
- List File [GRAPH.GC]:
- Libraries [.LIB]: GRCMDS
-
-
- In the above example, the files GRAPH.OBJ, BAR.OBJ, PIE.OBJ,
- and SUBS.OBJ will be scanned for symbols. The library GRCMDS.LIB
- will also be scanned for symbols. The Global Concordance Report
- will be printed to the file GRAPH.GC.
-
-
-
- Example:
-
-
- Object Modules [.OBJ]: GRAPH+BAR+PIE+
- Object Modules [.OBJ]: SCATTER+DOT+SUBS
- List File [GRAPH.GC]: MAP
- Libraries [.LIB]: GRCMDS
-
-
- In the above example, the files GRAPH.OBJ, BAR.OBJ, PIE.OBJ,
- SCATTER.OBJ, DOT.OBJ, and SUBS.OBJ will be scanned for symbols.
- The library GRCMDS.LIB will also be scanned for symbols. The
- Global Concordance Report will be printed to the file MAP.GC.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 3
-
-
-
-
-
-
-
-
-
- METHOD 2
-
- Enter:
-
- GLOBALS cmdfile
-
- Where:
-
- cmdfile is the name of a command file. A command file
- contains answers to the GLOBALS prompts (shown under method 1).
-
- A command file has text lines, one for each prompt.
- Responses must appear in the same order as the command prompts
- appear. When the GLOBALS session begins, each prompt will be
- displayed in turn with the responses from the command file. If
- the command file does not contain answers for all the prompts,
- GLOBALS will, after displaying the prompt which does not have a
- response, wait for the user to enter a legal response from the
- keyboard. When the legal response has been entered, GLOBALS
- continues execution.
-
-
- Example:
-
- GRAPH+BAR+PIE+SUBS
- MAP
- GRCMDS
-
-
- Assume the above information is contained in a text file
- called BUILD. Then the command 'GLOBALS BUILD' will perform the
- following:
-
- The files GRAPH.OBJ, BAR.OBJ, PIE.OBJ, and SUBS.OBJ will be
- scanned for symbols. The library GRCMDS.LIB will also be scanned
- for symbols. The Global Concordance Report will be printed to
- the file MAP.GC.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 4
-
-
-
-
-
-
-
-
- GLOBAL CONCORDANCE REPORT
-
-
- The Global Concordance Report consists of a header page
- followed by the main body of the report. The header page will
- give a list of all object modules and libraries which were
- scanned to produce the report.
-
- The main body of the report consists of entrys for all the
- symbols in alphabetical order. Each entry follows the following
- format:
-
- SYMNAM Def: MODNAM Seg: SEGNAM Lib: LIBNAM
- MODREF1 MODREF2 MODREF3 MODREF4
-
-
- Where SYMNAM is the name of the public symbol, MODNAM is the
- name of the object module in which the symbol is defined, SEGNAM
- is the name of the 8086 segment in which the symbol resides.
- The LIBNAM is an optional Library name which only appears if the
- MODNAM object module is contained in the library specified by
- LIBNAM. MODREF1, MODREF2, MODREF3, etc.., specify object modules
- which reference the specified symbol name, SYMNAM is considered
- an external symbol to these object modules.
-
- The following is an example of a symbol entry from the
- Global Concordance Report:
-
- DRAWPIE Def: PIE Seg: CODE
- GRAPH MENU EXEC
-
-
- The above entry tells us that the symbol DRAWPIE is defined
- in the object module PIE.OBJ and it is located in the CODE
- segment. The symbol is referenced by the modules GRAPH.OBJ,
- MENU.OBJ, and EXEC.OBJ.
-
-
- When a symbol which has been referenced by other modules but
- not defined in a module, it is classified as an undefined symbol
- and its entry will be printed as follows:
-
- SYMNAM Def: ******** Seg: ????????
- MODREF1 MODREF2 MODREF3
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
-
-
-
-
-
-
-
- SPECIAL NOTES
-
-
- . Supports a maximum of 256 object modules
-
- . Supports a maximum of 8 libraries
-
- . Supports a symbol length of upto 10 characters
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 6
-
-
-
-
-